Code Polymorphism Meets Code Encryption: Confidentiality and Side-Channel Protection of Software Components
نویسندگان
چکیده
In this article, we consider that, in practice, attack scenarios involving side-channel analysis combine two successive phases: an phase, targeting the extraction of information about target and identification possible vulnerabilities, exploitation applying techniques on candidate vulnerabilities. We advocate that protections need to cover these phases be effective against real-life attacks. present PolEn , a toolchain processor architecture countermeasures provide mitigation attacks: As countermeasure our approach considers use code encryption; as polymorphism, because it relies runtime generation, its combination with encryption is particularly challenging. Code supported by extension such machine instructions are only decrypted inside CPU, which effectively prevents reverse engineering or any useful from memory dumps. polymorphism implemented software means. It regularly changes observable behaviour program, making unpredictable for attacker, hence reducing possibility exploit leakages. prototype implementation, based RISC-V Spike simulator modified LLVM toolchain. experimental evaluation, illustrate reduces For protected functions evaluated, static increases factor 5 22, corresponding joint application polymorphism. The overhead, terms execution time, ranges between 1.8 4.6.
منابع مشابه
Runtime Code Polymorphism as a Protection Against Side Channel Attacks
We present a generic framework for runtime code polymorphism, applicable to a broad range of computing platforms including embedded systems with low computing resources (e.g. microcontrollers with few kilo-bytes of memory). Code polymorphism is defined as the ability to change the observable behaviour of a software component without changing its functional properties. In this paper we present t...
متن کاملSide channel parameter characteristics of code injection attacks
Embedded systems are suggestive targets for code injection attacks in the recent years. Software protection mechanisms, and in general computers, are not usually applicable in embedded systems since they have limited resources like memory and process power. In this paper we investigate side channel characteristics of embedded systems and their applicability in code injection attack detection. T...
متن کاملside channel parameter characteristics of code injection attacks
embedded systems are becoming a suggestive target for code injection attacks in recent years. software protection mechanisms in general computers are not usually applicable in embedded systems as they come with limited resources like memory and processor. in this paper we investigate side channel characteristics of embedded systems and their usability in code injection attack detection. the arc...
متن کاملSide channel attacks in code-based cryptography
The McEliece and the Niederreiter public key cryptosystems (PKC) are supposed secure in a post quantum world [4] because there is no efficient quantum algorithm for the underlying problems upon which these cryptosystems are built. The CFS, Stern and KKS signature schemes are post-quantum secure because they are based on hard problems of coding theory. The purpose of this article is to describe ...
متن کاملCode Obfuscation Techniques for Software Protection
An important security problem is to protect software against malicious host attacks. Since the malicious hosts are responsible for the program’s execution, there seems little the program can do to protect itself from disclosure, tampering and incorrect execution [7]. This paper will review some existing code obfuscation techniques for protecting software against those attacks. We will focus our...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: Digital threats
سال: 2022
ISSN: ['2692-1626', '2576-5337']
DOI: https://doi.org/10.1145/3487058